package com.rafaelsousa.sistemavendas.teste;

import static org.junit.Assert.assertEquals;

import org.hibernate.Session;
import org.hibernate.Transaction;
import org.junit.AfterClass;
import org.junit.BeforeClass;
import org.junit.Test;

import com.rafaelsousa.sistemavendas.cliente.Cliente;
import com.rafaelsousa.sistemavendas.util.HibernateUtil;

public class ClienteTest {

	private static Session sessao;
	private static Transaction transacao;

	@BeforeClass
	public static void abreConexao() {
		sessao = HibernateUtil.getSession().openSession();
		transacao = sessao.beginTransaction();
	}

	@AfterClass
	public static void fechaConexao() {

		try {

			transacao.commit();

		} catch (Throwable e) {
			System.out.println("Houve um problema no commit." + e.getMessage());
		} finally {
			try {
				if (sessao.isOpen()) {
					sessao.close();
				}
			} catch (Exception e2) {
				System.out.println("Houve um problema no fechamento da sessão."
						+ e2.getMessage());
			}
		}
	}

	@Test
	public void salvarClienteTest() {
		Cliente c1 = new Cliente();

		c1.setNome("Rafael");
		c1.setEndereco("Rua Teste");
		c1.setRenda(5000f);
		c1.setCpf("123456789");

		sessao.save(c1);

		assertEquals(true, true);

	}
}
